<article id="wikiArticle">
<div></div>
<h2 id="信息">信息</h2>
<pre><code class="language-javascript">TypeError: invalid Array.prototype.sort argument (Firefox)
</code></pre>
<h2 id="错误类型">错误类型</h2>
<p><a href="Reference/Global_Objects/TypeError" title="TypeError（类型错误） 对象用来表示值的类型非预期类型时发生的错误。"><code>TypeError</code></a></p>
<h2 id="哪里出错了">哪里出错了?</h2>
<p><a href="Reference/Global_Objects/Array/sort" title="sort() 方法用原地算法对数组的元素进行排序，并返回数组。排序算法现在是稳定的。默认排序顺序是根据字符串Unicode码点。"><code>Array.prototype.sort()</code></a> 的参数预期为 <a href="Reference/Global_Objects/undefined" title="undefined是全局对象的一个属性。也就是说，它是全局作用域的一个变量。undefined的最初值就是原始数据类型undefined。"><code>undefined</code></a> 或者是一个比较操作数的函数。</p>
<h2 id="示例">示例</h2>
<h3 id="无效的">无效的</h3>
<pre><code class="language-js example-bad">[1, 3, 2].sort(5);  // TypeError

var cmp = { asc: (x, y) =&gt; x &gt;= y, dsc : (x, y) =&gt; x &lt;= y };
[1, 3, 2].sort(cmp[this.key] || 'asc');  // TypeError
</code></pre>
<h3 id="有效的">有效的</h3>
<pre><code class="language-js example-good">[1, 3, 2].sort();   // [1, 2, 3]


var cmp = { asc: (x, y) =&gt; x &gt;= y, dsc : (x, y) =&gt; x &lt;= y };
[1, 3, 2].sort(cmp[this.key || 'asc']); // [1, 2, 3]</code></pre>
<h2 id="相关">相关</h2>
<ul>
<li><a href="Reference/Global_Objects/Array/sort" title="sort() 方法用原地算法对数组的元素进行排序，并返回数组。排序算法现在是稳定的。默认排序顺序是根据字符串Unicode码点。"><code>Array.prototype.sort()</code></a></li>
</ul>
</article>